آنچه تاکنون گفته شده است : در بخش سوم اين مقاله به بررسی نقاط آسيب پذير سرويس های Clear Text و Sendmail ، خواهيم پرداخت . پنجمين نقطه آسيب پذير : :Clear Text Services آيتم ارسالی Clear Auth Clear Content پورت سرويس متن ، باينری سرويس هائی نظير Telnet و FTP که شامل اطلاعات مربوط به تائيد هويت کاربران می باشند ، اطلاعات مورد نظر را بصورت متن ارسال که بالاترين ريسک را بدنبال خواهد داشت . در چنين مواردی مهاجمان می توانند با استفاده مجدد از داده های حساس کاربران نظير نام و رمز عبور، با خيال راحت ! به سيستم دستيابی نمايند .علاوه براين ، اجرای دستورات بصورت clear text می تواند توسط مهاجمان استفاده تا با استفاده از آنان دستورات دلخواه خود را بدون الزامی برای تائيد ، اجراء نمايند. سرويس های Clear text ، می توانند زمينه تهديدات مختلفی نظير : تسهيل در انجام حملات ، دستيابی از راه دور ، اجرای دستورات بر روی يک سيستم مقصد ، شنود و تشخيص اطلاعات را بدنبال داشته باشد . سيستم های عامل در معرض تهديد نحوه تشخيص آسيب پذيری سيستم # tcpdump -X -s 1600 دراين راستا می توان از برنامه های ديگر نظير : "ngrep" نيز استفاده نمود. برنامه فوق،امکان جستجوی الگوئی خاص نظير "sername " و يا " assword " را در شبکه فراهم می نمايد. ( اولين حروف، بمنظور سازگاری با حروف بزرگ احتمالی ، در نظر گرفته نشده است ) . برای دريافت برنامه فوق ، می توان از آدرس http://www.packetfactory.net/projects/ngrep استفاده نمود . نحوه فعال نمودن برنامه فوق ، بصورت زير است : # ngrep assword در اين رابطه می توان از ابزارهای متنوع ديگری بمنظور تشخيص داده های حساس کاربران ( نام و رمز عبور ) استفاده نمود . Dsniff ، متداولترين ابزار در اين زمينه است . برنامه فوق ، بررسی لازم در خصوص تمامی زوج نام و رمزعبور بر روی پروتکل های Plain text حجيم، نظير FTP ، Telnet و POP3 را انجام و پس از تشخيص، آنان را نمايش خواهد داد. برای بدست آوردن برنامه فوق می توان از آدرس http://www.monkey.org/~dugsong/dsniff استفاده نمود . نحوه فعال نمودن برنامه فوق ، بصورت زير است : # /usr/sbin/dsniff نحوه حفاظت در مقابل نقطه آسيب پذير # ssh -L 110:pop3.mail.server.com:110 username@pop3.mail.server.com در ادامه ، برنامه سرويس گيرنده پست الکترونيکی را به localhost اشاره می دهيم ، پورت TCP 110 ( برخلاف روال معمول که بصورت : pop3.mail.server.com ، پورت 110 است ) . بدين ترتيب ، تمامی ارتباطات بين ماشين و سرويس دهنده پست الکترونيکی بصورت رمز شده انجام خواهد شد ( tunneled over SSH ) . ششمين نقطه آسيب پذير : : Sendmail - CERT Advisory CA-2003-12 Buffer Overflow in Sendmail خطرات و تهديدات مرتبط با Sendmail را می توان به دو گروه عمده تقسيم نمود : از دست رفتن امتيازات که علت آن buffer overflow خواهد بود و پيکربندی نادرست سيستم که می تواند تبعات منفی را بدنبال داشته باشد ( مثلا" تبديل يک سيستم به مرکزی آلوده برای توزيع نامه های الکترونيکی ) .عامل اصلی در بروز تهديدات نوع اول ، عمدتا" به استفاده از نسخه های قديمی و يا عدم patching مناسب سيستم برمی گردد.علت اصلی تهديدات نوع دوم ، به استفاده از فايل های پيکربندی پيش فرض و نادرست برمی گردد . سيستم های عامل در معرض تهديد نحوه تشخيص آسيب پذيری سيستم echo $Z | /usr/lib/sendmail -bt -d0 مسير مشخص شده sendmail در دستور فوق ، با توجه به پيکربندی سيستم ، می تواند متفاوت باشد. برای آگاهی از آخرين نسخه ارائه شده Sendmail می توان از آدرس http://www.sendmail.org/current-release.html استفاده نمود . نحوه حفاظت در مقابل نقطه آسيب پذير نسخه موجود را به آخرين نسخه ارتقاء و از آخرين patch های موجود ، استفاده گردد . برای دريافت source code می توان از آدرس http://www.sendmail.org استفاده نمود. در صورتيکه نسخه sendmail بهمراه سيستم عامل ارائه شده است ( يک Package ) ، می توان برای دريافت patch مربوطه به سايت عرضه کنندگان سيستم عامل مراجعه نمود. برنامه sendmail عموما" بصورت پيش فرض در اکثر سيستم های يونيکس و لينوکس ( حتی آنانی که بعنوان سرويس دهنده mail مورد نظر نبوده و فعاليت آنان در ارتباط با mail نخواهد بود) نصب می گردد. برنامه Sendmail را در حالت daemon بر روی ماشين های فوق ، اجراء ننمائيد ( غير فعال نمودن سوئيچ bd - ) . امکان ارسال نامه الکترونيکی توسط سيستم های فوق ، همچنان وجود خواهد داشت . در اين رابطه می بايست پيکربندی سيستم بگونه ای انجام شود که به يک mail relay در فايل پيکربندی sendmail ، اشاره گردد.فايل پيکربندی، sendmail.cf نام داشته و معمولا" در آدرس etc/mail/sendmail.cf قرار دارد . در صورتيکه لازم است sendmail در حالت daemon اجراء گردد، می بايست از صحت پيکربندی انجام شده اطمينان حاصل گردد. در اين رابطه می توان از منابع اطلاعاتی زير استفاده نمود : در زمان استفاده از نسخه جديد sendmail ( سوئيچ نمودن به يک نسخه ديگر ) ، لازم است تدابير لازم در خصوص تغيير فايل های پيکربندی ارائه شده توسط نسخه قديمی ، انديشيده گردد . برای آگاهی از جزئيات بيشتر در ارتباط با پيکربندی Sendmail ، می توان از آدرس http://www.sendmail.org/m4/readme.html استفاده نمود. در موارديکه برنامه Sendmail از منابع موجود بر روی اينترنت Download می گردد ، می بايست بمنظور اطمينان از مجاز بودن نسخه تکثيری از PGP signature استفاده نمود. در اين رابطه لازم است به اين نکته دقت شود که بدون بررسی integrity مربوطه به source code برنامه Sendmail ، نمی بايست از آن استفاده شود. در گذشته ، نسخه هائی از Trojan ها در Sendmail مستقر تا در زمان مناسب حرکت مخرب خود را آغاز نمايند . بمنظور دريافت اطلاعات تکميلی در اين رابطه می توان از آدرس CERT Advisory CA-2002-28 استفاده نمود. کليدهای استفاده شده بمنظور sign نمودن برنامه Sendmail دريافتی را می توان از آدرس http://www.sendmail.org/ftp/PGPKEYS بدست آورد . در صورت فقدان PGP ، می بايست از MD5 Checksum بمنظور بررسی integrity کد منبع Sendmail ، استفاده گردد. برای کسب اطلاعات بيشتر می توان از منابع اطلاعاتی زير استفاده نمود : http://www.sendmail.org/secure-install.html
تعداد زيادی از سرويس های شبکه استفاده شده توسط سيستم های مبتنی بر يونيکس ، بصورت plain text بوده و از رمزنگاری خاصی استفاده نمی نمايند. ضعف در رمزنگاری ، امکان شنود اطلاعاتی ( مشاهده ترافيک شبکه ) را فراهم و مهاجمان در ادامه امکان دستيابی به محتویات ارتباط ايجاد شده و يا اطلاعات حساس کاربران نظير داده های مرتبط با رمز عبور را بدست خواهند آورد. مثلا" بمنظور تشخيص اطلاعات مرتبط با FTP و يا telnet ( اطلاعات login ) ، يک مهاجم ، می تواند يک sniffer را در شبکه و در محلی بين مسير ارتباطی، مستقر نمايد (بعنوان سرويس دهنده FTP و يا يا Client LAN ) . تبادل اطلاعات بين دستورات ورودی توسط سرويس گيرندگان و پاسخ های ارائه شده توسط سرويس های موجود بر روی سرويس دهنده ، بصورت plain-text خواهد بود. بدين ترتيب ،امکان رديابی ( رهگيری ) داده و يا کليدهای فشرده شده توسط کاربر بسادگی فراهم می گردد. اغلب مهاجمان در حملات اخير خود از برنامه های مختص شنود اطلاعاتی استفاده و عمدتا" اينگونه برنامه ها را بر روی دستگاهها ی آسيیب پذير نصب می نمايند. در چنين مواردی ، تشخيص نام و رمز عبور کاربر در داده های جمع آوری شده ( شنود اطلاعاتی ) ، بسادگی ميسر خواهد شد.جدول زير، ليست برخی از سرويس های شبکه يونيکس را که اطلاعات را بصورت Clear Text ، مبادله می نمايند ، نشان می دهد :
Yes
Yes
21 , 20
FTP
متن ، باينری
N/A
Yes
69
TFTP
متن
Yes
Yes
23
telnet
متن ، باينری
N/A
Yes
25
SMTP
متن ، باينری
Yes
Yes
110
POP3
متن ، باينری
Yes
Yes
143
IMAP
متن
Yes
Yes
513
rlogin
متن
Yes
Yes
514
rsh
متن ، باينری
Yes
Yes
80
HTTP
تمامی نمونه های يونيکس ارائه شده ، از سرويس ها ی Clear text استفاده می نمايند. ( telnet و FTP دو نمونه متدواول در اين زمينه می باشند ) . تمامی نمونه نسخه های ارائه شده يونيکس و لينوکس ( تنها استنثاء در اين رابطه، مربوط به آخرين ويرايش Free/OpenBSD می باشد ) ، بصورت پيش فرض ، برخی از سرويس های فوق را نصب می نمايند .
موثرترين و مطمئن ترين روش بمنظور تشخيص نقطه آسيب پذير فوق (سرويس های clear text ) ، بکارگيری نرم افزاری مشابه با ابزارهای استفاده شده (sniffer) توسط مهاجمان است. متداولترين برنامه موجود در اين زمينه ، tcpdump می باشد. برای دريافت برنامه "tcpdump " می توان از آدرس http://www.tcpdump.org ، استفاده نمود . نحوه فعال نمودن برنامه فوق،بمنظور تشخيص هر گونه ارتباط clear text ، بصورت زير است :
استفاده از رمزنگاری End-To-End و يا حداقل رمزنگاری Link-level می تواند در اين زمينه مفيد واقع گردد. برخی پروتکل ها از لحاظ رمزنگاری معادل يکديگر می باشند( نظير : POP3S و HTTPS ) . برای پروتکل هائی که دارای قابليت ها و امکانات , ذاتی رمزنگاری نمی باشند ، می توان آنان را از طريق SSH : Secure Shell ، و يا SSL connection انجام داد( tunneling ) .
OpenSSH يک نمونه پياده سازی شده متداول و انعطاف پذير ازSSH است.( قابل دسترس در آدرس http://www.openssh.org ) . برنامه فوق، در اکثر نسخه های يونيکس اجراء و می توان از آن بمنظور ارتباطات از راه دور ( replaces telnet ,rlogin ,rsh ) و tunneling ( پروتکل هائی نظير POP3,SMTP و X11 ) استفاده گردد .
دستور زير نحوه tunnel نمودن POP3 را بر روی SSH connection نشان می دهد. بر روی سرويس دهنده POP3 ، می بايست سرويس دهنده SSH نيز اجراء گردد. در ابتدا آن را بر روی ماشين سرويس گيرنده اجراء می نمائيم :
يکی ديگر از راه حل های متداول رمزنگاری مبتنی بر tunneling ، استفاده از stunnel است . روش فوق ، پروتکل SSL را پياده سازی( با استفاده از OpenSSL Toolkit ) و می توان آن را بمنظور tunel نمودن پروتکل های متفاوت plain text بخدمت گرفت . برای دريافت برنامه فوق ، می توان از آدرس http://www.stunnel.org استفاده نمود.
Sendmail ، برنامه ای است که از آن بمنظور ارسال ، دريافت و فوروارد نمودن نامه های الکترونيکی در اغلب سيستم های يونيکس و لينوکس استفاده می گردد. Sendmail ، يکی از متداولترین MTA : Mail Transfer Agent در اينترنت بوده که بطور گسترده ای از آن بعنوان "آژانش توزيع نامه های الکترونيکی" بهمراه سرويس دهندگان پست الکترونيکی ، استفاده می گردد . Sendmail ، يکی از اهداف اوليه مهاجمان در ساليان اخير بوده و تاکنون حملات متعددی را در ارتباط با آن شاهد بوده ايم. اکثر حملات انجام شده بدليل قديمی بودن و يا عدم patch مناسب نسخه های نصب شده ، با موفقيت همراه بوده است .در اين رابطه می توان به چندين نمونه از حملات اخير اشاره نمود :
- CERT Advisory CA-2003-07 Remote Buffer Overflow in Sendmail
- CERT Advisory CA-2003-25 Buffer Overflow in Sendmail
تقريبا" تمامی نسخه های لينوکس و يونيکس بهمراه يک نسخه نصب شده از Sendmail عرضه می گردند. سرويس فوق، بصورت پيش فرض فعال می باشد .
Sendmail ، در گذشته دارای نقاط آسيب پذير فراوانی بوده که بتدريج وبا ارائه نسخه های جديدتر و patch های مربوطه ، ميزان آسيب پذيری آن کاهش يافته است .هر نسخه قديمی و يا Patch نشده نرم فزار فوق در معرض آسيب قرار خواهد داشت . بمنطور مشخص نمودن شماره نسخه برنامه sendmail ، می توان از دستور زير استفاده نمود :
مراحل زير بمنظور ايمن سازی و حفاظت Sendmail پيشنهاد می گردد :
http://www.sendmail.org/tips/relaying.html
http://www.sendmail.org/m4/anti_spam.html
در نسخه Sendmail 8.9.0 ، امکان open relay بصورت پيش فرض غيرفعال می باشد.تعداد زيادی از عرضه کنندگان سيستم های عامل ، مجددا" آن رادر پيکربندی پيش فرض خود فعال می نمايند. در صورت استفاده از نسخه Sendmail ارائه شده بهمراه سيستم عامل ، می بايست دقت لازم در اينخصوص را انجام داد ( عدم استفاده سرويس دهنده برای realying ).
http://www.sendmail.org/m4/security_notes.html
http://www.sendmail.org/~gshapiro/security.pdf
در بخش چهارم اين مقاله به بررسی ساير نقاط آسيب پذير يونيکس و لينوکس خواهيم پرداخت .
منبع:srco.ir
نظرات شما عزیزان: